/**
 * 修复单个文件的BOM字符问题
 * 
 * 使用方法: node fixSingleFile.js <文件路径>
 * 例如: node fixSingleFile.js packages/renderer/examples/EventPropagationExample.jsx
 */

const fs = require('fs');
const path = require('path');

// 文件路径
const filePath = process.argv[2];

if (!filePath) {
  console.error('请提供文件路径作为参数');
  process.exit(1);
}

// 读取文件内容
try {
  // 读取文件内容，不指定编码，以便处理任何编码
  const buffer = fs.readFileSync(filePath);
  
  // 检查是否有BOM标记 (EF BB BF)
  let content;
  if (buffer.length >= 3 && buffer[0] === 0xEF && buffer[1] === 0xBB && buffer[2] === 0xBF) {
    console.log('检测到BOM标记，将会移除');
    content = buffer.slice(3).toString('utf8');
  } else {
    content = buffer.toString('utf8');
  }
  
  // 写入文件，不包含BOM
  fs.writeFileSync(filePath, content, { encoding: 'utf8' });
  console.log(`文件 ${filePath} 已成功修复`);
} catch (error) {
  console.error(`处理文件时出错: ${error.message}`);
  process.exit(1);
} 